1. Field of the Invention
The present invention relates generally to an apparatus and method for receiving broadcast service in a mobile communication system. In particular, the present invention relates to an apparatus and method for receiving Reed-Solomon (RS) code-based broadcast service in a Code Division Multiple Access (CDMA) mobile communication system.
2. Description of the Related Art
A mobile communication system has developed from an early system that provides a voice service into an improved system that can provide a data service. The mobile communication system is evolving into a system capable of providing broadcast service along with various data services. The system that provides broadcast service is now undergoing various standardizations in 3rd Generation Partnership Project 2 (3GPP2). Broadcast service defined in the CDMA2000 1× Rev. D standard among the standards proposed by 3GPP2 to provide broadcast service is called “Broadcast Multicast Service (BCMCS).” 3GPP2 has established other standards as well as the CDMA2000 1× Rev. D standard to provide broadcast service.
A description will now be made of the broadcast service defined in the CDMA2000 1× Rev. D standard the entire contents of which is hereby incorporated by reference. In the following description, the BCMCS service defined in the CDMA2000 1× Rev. D standard will be referred to as a “data service.”
The broadcast service uses a block interleaving method, and block-interleaved data for various broadcast services is transmitted over one channel on a Time Domain Multiplex (TDM) basis. The broadcast service uses a Reed-Solomon (RS) code as an outer code in addition to an inner code. If the broadcast service data is transmitted using the TDM scheme, a receiving party can selectively receive a minimum possible number of frames, thereby improving its efficiency.
However, the TDM method has the foregoing advantage when no outer code is applied. That is, in the current standard in which the RS code is used as an outer code, the receiving party should receive even the undesired service data. With reference to the accompanying drawing, a description will now be made of the current broadcast service scheme.
FIG. 1 is a timing diagram for a description of a method for providing broadcast service on a TDM basis according to the CDMA2000 1× Rev. D standard.
In FIGS. 1, A, B, C and D represent types of broadcast services. As illustrated in FIG. 1, a base station TDM-multiplexes provided broadcast services before transmission. The TDM-multiplexed broadcast service has a TDM period TDM_PERIOD 100. The TDM period 100 includes TDM slots therein. A predetermined number of the TDM periods constitute a TDM super period TDM_SUPER_PERIOD.
A method of providing broadcast service will now be described. A user terminal, when it desires to receive a particular broadcast service, can identify a type of a TDM-multiplexed broadcast service transmitted over a particular channel. If a user desires to view a particular broadcast service after identifying a type of the broadcast service, the user terminal receives TDM-multiplexed broadcast service information, shown in FIG. 1, transmitted by the base station. Information used for receiving the TDM-multiplexed broadcast service data is shown in Table 1 below, and Table 2 and Table 3 are provided to give a description of the information shown in Table 1.
Table 1 shows an exemplary format of a Broadcast Service Parameter Message (BSPM) used for transmitting TDM-multiplexed BCMCS service defined in the CDMA2000 1× Rev. D standard. Table 2 shows a matching relationship between TDM slot length parameters and TDM length parameters for the information shown in Table 1. Table 3 shows TDM slot lengths matched to their associated TDM super periods.
TABLE 1Message FieldNumber of BitsTDM_USED_IND1TDM_SLOT_LENGTH0 or 2TDM_PERIOD0 or 2TDM_MASK0 or (4, 8 or 16)TDM_SUPER_PERIOD_MASK0 or 4
In Table 1, TDM_USED_IND has 1 bit, and indicates whether corresponding broadcast service is TDM-multiplexed before being transmitted. If the broadcast service data is TDM-multiplexed before being transmitted, its following field values are added. For the other fields shown in Table 1, if the number of bits is ‘0’, it means that TDM is unused. In Table 1, TDM_SLOT_LENGTH 110 has 2 bits when TDM is used, and indicates a length of TDM slots included in one TDM period 100 shown in FIG. 1. TDM_PERIOD in Table 1 indicates the number of slots included in a TDM period, and has a 2-bit value when TDM is used. TDM_MASK has a value of 4 bits, 8 bits or 16 bits, and indicates in which slot the broadcast service requested by the user is included in the TDM period 100. In FIG. 1, reference numeral 120 represents the case in which a TDM_MASK value is set with 4 bits. Finally, TDM_SUPER_PERIOD_MASK has a 0-bit or 4-bit value depending on whether a super frame is used or not. When the super frame period is used, a super frame period mask value is set to a 4-bit value, as shown by reference numeral 130 in FIG. 1.
TABLE 2TDM_SLOT_LENGTHLength of theTDM_PERIODTDM(binary)TDM slot(binary)period0020 ms004 slots0140 ms018 slots1080 ms1016 slots 11Reserved11Reserved
Table 2 shows TDM slot length values matched to their associated TDM period values. Among the TDM slot length values, ‘Reserved’ denotes an unused value.
TABLE 3TDM periodSlot Length4 slots8 slots16 slots20 ms (1 frame)16 frames32 frames 64 frames40 ms (2 frames)32 frames64 frames128 frames80 ms (4 frames)64 frames128 frames 256 frames
Table 3 shows a matching relationship between the number of slots included in a TDM period and the number of frames transmitted according to a slot length in one TDM super period. It can be noted from Table 3 that a minimum of 16 frames through a maximum of 256 frames are available in one TDM super period according to the number of slots of the TDM period 100 and a length of one slot.
The user terminal, once it receives the information of Table 1, can receive data of a corresponding frame. A detailed description thereof will be made with reference to FIG. 1. When a particular user desires to receive a broadcast service A, a value denoted by reference numeral 121 is transmitted as a TDM_MASK value of Table 1. That is, a TDM_MASK value of ‘1010’ denoted by reference numeral 121 is transmitted as a TDM_MASK value transmitted to a terminal that desires to view a broadcast service A. Similarly, a TDM_MASK value of ‘0100’ denoted by reference numeral 122 is transmitted as a TDM_MASK value transmitted to a terminal that desires to view a broadcast service B, a TDM_MASK value of ‘0001’ denoted by reference numeral 123 is transmitted as a TDM_MASK value transmitted to a terminal that desires to view a broadcast service C, and a TDM_MASK value of ‘1010’ denoted by reference numeral 124 is transmitted as a TDM_MASK value transmitted to a terminal that desires to view a broadcast service D.
In this case, it is not possible to distinguish between the broadcast service A and the broadcast service D with only the TDM_MASK. Instead, the broadcast service A and the broadcast service D are distinguished by TDM_SUPER_PERIOD_MASK values. That is, TDM_SUPER_PERIOD_MASK values are set for the broadcast services A, B, C and D as shown by reference numeral 130 of FIG. 1, and the TDM_SUPER_PERIOD_MASK values each indicate in which TDM period the corresponding broadcast service is transmitted, as shown by reference numerals 131, 132, 133 and 134.
It is provided in the CDMA2000 1× Rev. D standard that RS outer codes are used for broadcast services. As specified in the BCMCS physical layer standard, the RS outer code has a 64-frame period and the 64 frames constitute 4 sub-buffers. With reference to FIG. 2, a description will now be made of a broadcast service scheme using RS outer codes.
FIG. 2 is a diagram for a description of a method for RS-encoding broadcast service data with an outer code according to the CDMA2000 1× Rev. D standard.
FIG. 2 illustrates 4 sub-buffers including a sub-buffer0 210, a sub-buffer1 220, a sub-buffer2 230, and a sub-buffer3 240, specified in the standard. As specified in the physical layer standard for broadcast service, because 64 frames constitute one frame, the 4 sub-buffers 210, 220, 230 and 240 are constructed such that they can store a total of 64 frames. Therefore, each of the sub-buffers 210, 220, 230 and 240 is constructed such that it can store 16 frames. Actually, however, the number of frames stored in each of the buffers 210, 220, 230 and 240 becomes a predetermined number k (an integer smaller than 16). The reason for this is to perform RS encoding. When broadcast service is provided, a set of the k is defined as 11, 12, 13 and 14. Therefore, in each of the sub-buffers 210, 220, 230 and 240 of FIG. 2, first k frames are stored and the other areas are kept empty. In the areas where no frame is stored, parity frames which are RS-encoded frames are stored. In this manner, each of the sub-buffers 210, 220, 230 and 240 is filled with 16 frames. In FIG. 2, this process is denoted by an RS encoding process. That is, reference numerals 211, 221, 231 and 241 of FIG. 2 show buffer states after the RS-encoding.
The sub-buffers 211, 221, 231 and 241 including the RS-encoded frames output the broadcast data in regular sequence in order to perform block interleaving. A description will now be made of a process of block-interleaving broadcast data and outputting frames.
After a first frame output from the first sub-buffer 211 is transmitted, a first frame from the second sub-buffer 221 is transmitted, and then a first frame of the third sub-buffer 231 is transmitted. Finally, after a first frame of the fourth sub-buffer 241 is transmitted, a second frame of the first sub-buffer 211 is transmitted.
Frames in buffers 212, 222, 232 and 242 shown in the right-hand side of FIG. 2 are assigned unique numbers of ‘0’ through ‘63’ in transmission order of the broadcast frames stored in the sub-buffers 211, 221, 231 and 241. That is, a transmission order assigned to the frames stored in the first sub-buffer 211 is denoted by reference numeral 212, a transmission order assigned to the second sub-buffer 211 is denoted by reference numeral 222, a transmission order assigned to the third sub-buffer 231 is denoted by reference numeral 232, and a transmission order assigned to the fourth sub-buffer 241 is denoted by reference numeral 242. As to the first sub-buffer 211, a first frame is transmitted first, a second frame is transmitted fifth, and a third frame is transmitted ninth. Even the frames stored in the other sub-buffers 221, 231 and 241 are transmitted in the same manner.
With reference to FIG. 3, a description will now be made of an exemplary method for transmitting the frames in a TDM super period and a TDM period.
FIG. 3 is a timing diagram for broadcast service data transmission for the case where data for 6 broadcast services is subject to TDM multiplexing and RS encoding before being transmitted. Referring to FIG. 3, a TDM super period 300 includes 4 TDM periods 310, 320, 330 and 340, and each of the TDM periods 310, 320, 330 and 340 transmits broadcast service frames A, B, C, D, E and F for different broadcast services.
In receiving the frames transmitted in the manner shown in FIG. 3, a terminal, which is a receiving party, should receive the data for each individual service buffer, and should receive even the other broadcast frames included in the sub-buffer in which its own broadcast service is included, before decoding the received data. The reason for this is because an RS code is used as an outer code as described with reference to FIG. 2.
A description thereof will be made with reference to FIG. 4. FIG. 4 is a diagram illustrating a method for storing transmission data in each sub-buffer for the case where broadcast service is provided in the method described with reference to FIG. 2.
Referring to FIG. 4, transmission data is stored in each of first through fourth sub-buffers 410, 420, 430 and 440. FIG. 4 shows an exemplary method for transmitting data in the method of FIG. 3. That is, frames for 3 broadcast services A, E and F are stored in the first sub-buffer 410, frames for 3 broadcast services A, B and F are stored in the second sub-buffer 420, frames for 2 broadcast services C and F are stored in the third sub-buffer 430, and frames for 2 broadcast services D and F are stored in the fourth sub-buffer 440. The last several frames in each of the sub-buffers 410, 420, 430 and 440 become parity frames for RS encoding. For example, for k=14, every sub-buffer transmits 2 parity frames. Therefore, data for the last two broadcast services A and E in the first sub-buffer 410 of FIG. 4 actually becomes parity frames generated by broadcast services A, E and F, instead of the broadcast services A and E. This is applied in the same way even to the other buffers 420, 430 and 440.
Therefore, a terminal desiring to receive a particular broadcast service cannot have the advantage of the TDM due to the frames transmitted in the foregoing manner. This is because the terminal cannot perform RS decoding unless it receives all data in the sub-buffer in which its desired broadcast service is included. In addition, RS-encoded frames are sequentially transmitted one by one for each buffer as described with reference to FIG. 2. That is, the RS-encoded frames are transmitted after being block-interleaved. Therefore, it is difficult to correctly determine in which buffer the actual transmission frame is included. These problems were caused because they were not taken into consideration for the broadcast service during the CDMA2000 1× Rev. D standardization.